﻿using System;

class NumberValuePosition
{
    static void Main()
    {
        Console.Write("Enter n = : ");
        int n = int.Parse(Console.ReadLine());        
        Console.Write("Enter p = : ");
        int p = int.Parse(Console.ReadLine());
        int mask = 1 << p;       
        int nAndMask = n & mask;  
        int bit = nAndMask >> p; 
        Console.WriteLine(bit);   
        Console.WriteLine(Convert.ToString(bit, 2).PadLeft(32, '0'));        
        // не успях да комбинирам двете упътвания, така че да се получава само правилния отговор
        mask = ~(1 << p);         
        int result = n & mask;   
        Console.WriteLine(result);
        Console.WriteLine(Convert.ToString(result, 2).PadLeft(32, '0'));        
        mask = 1 << p;             
        result = n | mask;       
        Console.WriteLine(result);  
        Console.WriteLine(Convert.ToString(result, 2).PadLeft(32, '0'));           
    }
}

